class Shape():
    def __init__(self, pos):
        self.type = None
        self.gridx = pos[0]
        self.gridy = pos[1]
        self.anchor = []

    def updatePos(self, x, y):
        self.gridx = x
        self.gridy = y

    def collide(self, shape):
        pass

class Polygon(Shape):
    def __init__(self, pos, *anchors):
        self.type = "polygon"
        Shape().__init__(pos)
        self.anchor = anchors[::]

class Cycle(Shape):
    def __init__(self, pos, sangle, angle):
        self.type = "cycle"
        Shape().__init__(pos)
        self.anchor = (sangle, angle)

